查看原文
其他

《半瓶子醋》之实证1:错误的因子相关性

石川 川总写量化 2019-07-12


1

理解风险因子


投资界的主流看法认为风险因子(risk factors)中能够带来稳定超额收益的那些因子为 α 因子,原因是随着越来越多的有效 α 因子被加入到多因子模型中,股票或者投资组合的超额收益逐渐被这些因子的因子收益来解释,无法被解释的残差部分越来越少。


那么到底如何理解风险因子呢?


风险因子描述的是一揽子股票所共同承担(或者暴露于的)的某一方面的系统性风险。相应的,风险因子收益理解为围绕该因子构建的投资组合的共性收益(即系统性风险溢价)。该投资组合如果赚钱,那么靠的是其在该风险因子上的暴露,靠的是该风险因子在时间维度上所带来的有效而稳定的风险溢价。


美国的AQR基金写过一篇文章来分析巴菲特的选股能力。结果显示,巴菲特选股的收益率几乎可以完全被6个风格因子的收益率来解释。它说明巴菲特的投资组合能赚钱是因为它以一定的权重有效的暴露在了这6个风险因子之中,长期稳定地赚取了这6个因子的风险溢价。因此,巴菲特的成功不是靠着“神之一手”来挖掘股票中无法被风险因子收益解释的特异性收益(specific return)部分,而是依靠一套科学的价值投资框架来保证他的投资组合对最合理的风险因子有着正确的暴露,这些风险因子的风险溢价为他带来了年复一年的优秀收益。


2

构建错误的因子投资组合


想要使用风险多因子模型来构建投资组合,首先必须正确的评判每个风险因子是否能够带来超额收益。这就要求我们围绕因子构建投资组合,并考察该投资组合的收益率(它就被定义为该因子的因子收益率)在时间维度上是否可以贡献统计意义上稳定的超额收益。


量信之前的文章《半瓶子醋》介绍了国内主流的风险多因子模型中构建因子投资组合的错误做法:拿来一个因子,首先将所有个股在该因子上的因子暴露(factor exposure)在截面上标准化;之后所有股票会按照因子的业务逻辑、根据因子暴露的数值好到坏排列;最后,假设做多前10%或者20%的股票,做空后10%或者20%的股票,以此来构建一个零额投资的投资组合,并考察该投资组合是否在时间维度上能够稳定的赚取超额收益。


这么做的两个错误是:


1 无法保证该投资组合对该因子的暴露为1;

2 无法保证该投资组合对其他因子的因子暴露为0。


第一个问题造成在时间维度上评价因子作用时,每期的投资组合对该因子的暴露程度都不一样,这就使得比较时没有统一的基准。举个例子,假如相邻两个月中,某因子的投资组合对该因子的暴露为1和2,而相应的因子收益率为1%和2%。如果我们忽视了因子暴露程度不同的话,就会得到本期因子收益率较前一期的数值有所提高的错误结论。这个问题可以通过同比例调整多空组合中所有股票的权重来解决。因此,还不是最大的问题。


第二个问题才是更严重的。风险因子大多来源于股票的基本面数据,因此很多因子之间存在一定的线性相关性。为了正确的评价一个风险因子是否有效以及在什么程度上有效,必须保证围绕该因子来构建的投资组合可以最大程度的剥离因子之间的相关性。换句话说,针对某个因子构建的投资组合在其他因子上面不能有任何暴露。为满足这一点,需对每期股票的因子截面数据进行有限制条件的多元带权重的回归。很显然,国内主流的多空做法根本无法保证这一点。


满足以上两点的投资组合称为风险因子的纯因子投资组合(pure factor portfolio)。只有分析纯因子投资组合的收益率时间序列,才能正确地评价风险因子的有效性。


由于存在上述两个错误(尤其是第二个错误,因为第一个错误可以规避),多空投资组合在评价因子有效性,会遇到下面三个问题:


1 不同因子收益率之间存在不正常的线性相关性(即不同因子的因子收益率之间的相关系数不接近0);


2 由于不正常的线性相关性,一些因子获取超额收益的能力被高估;


3 由于不正常的线性相关性,一些因子获取超额收益的能力被低估。


从本期开始,我们就通过三期数据解码投资专题在中国股市中实证上述三点。今天先来看看第一点:因子收益率之间的错误的相关性。下面首先简述实验准备。


3

实验准备与设定


根据MSCI旗下的BARRA的中国风险因子模型,我们在实证中考虑一个国家因子和11大类风格因子,它们是:

成长因子(GROWTH)

EP因子

BP因子

流动性因子(LIQ)

质量因子(QUALITY)

规模因子(SCALE)

非线性规模因子(SCALE_NL)

BETA因子

波动率因子(RESID_STD)

动量因子(MOM)

反转因子(REV)


股票候选池为中证500的成分股。构建因子投资组合的频率为月频,即每月月底使用当时最新的因子暴露,以此构建投资组合,然后以之后一个月该投资组合的收益率作为因子收益率。


在时间维度上使用从2013年12月到2016年11月三年的月频数据(即每月有一组所有因子的因子收益率),来检验因子收益率之间的相关性。


我们将正确的构建因子投资组合的方法称为纯因子投资组合;将主流(但是错误的)因子投资组合构建方法称为多空投资组合。在我们考察时间范围内的每个月,对于每一个因子,都用两种方法分别构建一个零额投资且对该因子的暴露为1的投资组合,然后计算这两个投资组合的收益率,便得到这两种方法下各自的因子收益率。每月重复这个操作,便得到每个因子的收益率序列。


4

因子收益率错误相关性实证


将这11大类风格因子按照纯因子投资组合方法得到的因子收益率序列放在一起计算相关系数,将其称为按照正确方法得到的因子(收益率)相关系数。


类似的,将这11大类风格因子按照多空投资组合方法得到的因子收益率序列放在一起计算相关系数,将其称为按照错误方法得到的因子(收益率)相关系数。


比较和分析这两组相关系数便可以看到多空投资组合错误的高估了某些因子的正相关或者负相关性。下面来看具体结果。


下图为按照纯因子投资组合方法得到的因子收益率相关系数的热图(heatmap),以深红和深蓝表示+1和-1。可以看到,虽然某些因子之间存在一定的正相关或者负相关,但绝大多数因子之间的相关系数的热图颜色都是浅蓝或者浅红,表示非常低的相关性。




再来看看多空投资组合得到的因子收益率的相关性(热图如下)。比较这两张热图,明显发现下面这张图中深蓝和深红的区域大大增加,说明由于错误的多空投资组合构建法,使得很多因子间出现了错误的相关性。最明显的一个例子是BP因子和动量MOM因子。在这种错误的方法下,它们之间的相关系数高达-0.846,而在纯因子投资组合方法中,它们的相关系数仅为-0.244。




如果说热图还不够清晰,那么我们可以通过统计学中的VIF(variance inflation factor)来评价因子间的相关性。VIF指标可以检验一组多元变量之间的潜在共线性。它的方法是从这组变量中挑出某一个,然后用剩余的变量其进行回归并得到R2。然后VIF便等于1/(1- R2)。


如果因子之间存在共线性,那么必然有某个因子可以被其他因子的某种线性组合来比较好的表示,即回归的R2就会比较大,而对应的VIF也会很大。在实际使用时,如果某个因子的VIF大于5就表示它和其他因子之间存在共线性。


下表给出了这11大类因子在这两种投资组合构建方法下得到的因子收益率的VIF




由纯因子投资组合方法得到的因子VIF中,大部分都在2.5或者3以下,这在实践中可以认为没有明显的共线性。反观多空投资组合的因子VIF,有7个因子的VIF超过了前一种方法的数值,其中BP和MOM因子的VIF都超过5(热图分析也指出,当使用多空投资组合时,它们的相关系数为-0.846,表示明显的负相关)。这些高数值就是多空投资组合造成了因子收益率间不正常线性相关性的证明。


因子间不正常的线性相关性将会对评价因子有效性造成极大的干扰。它可以使一些因子的作用被高估,而另一些因子的作用被低估。我们会在后续的两篇实证中分别介绍。





    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存